package com.softeem.list.linkedList;

import java.util.LinkedList;

/**
 * 使用LinkedList模拟队列(先进先出)
 * 因为当前linkedList对于集合中的数据进行更改的时候比较方便,通过元素的前指针和后指针改变的方式
 * 来实现元素的快速索引
 */
public class MyQueue {
    //定义了一个linkedList的集合
    private LinkedList<String> list = new LinkedList<String>();
    //进入到队列 从队尾进行元素的插入
    //boolean offer(E e)
    //  将指定的元素添加为此列表的尾部（最后一个元素）。
    public boolean offer(String element){
        return list.offer(element);
    }

    //出队列 队头进行删除的操作
    //E poll()
    //  检索并删除此列表的头（第一个元素）。
    public String poll(){
        return list.poll();
    }
    public static void main(String[] args) {
        MyQueue myQueue = new MyQueue();
        //进入到队列
        myQueue.offer("a");
        myQueue.offer("b");
        myQueue.offer("c");

        //出队列
        while (myQueue.list.size() != 0){
            System.out.println(myQueue.poll() + "出队列");
        }
    }
}
